Methods and systems for electronic device status exchange

ABSTRACT

Methods, devices and servers for exchanging information about the status of mobile communications are described. In one aspect, a method is implemented on a device status exchange server, which includes: storing a plurality of profiles associated with a plurality of mobile communication devices that are serviced by a wireless service provider having a wireless service provider server which tracks information about the mobile communication devices, the plurality of profiles storing at least some of the information tracked by the wireless service provider server; receiving, from third party servers, subscription requests for notification of an update in information associated with one of the mobile communication devices; 
     registering the received subscription requests; detecting an update to the information stored in one of the profiles based on information received from a server; and in response to detecting the update: updating the profile associated with the mobile communication device associated with the updated information; and notifying the third party servers of the update in accordance with registered subscription requests.

TECHNICAL FIELD

The present disclosure relates generally to mobile communicationdevices. More specifically, it relates to methods and devices devicestatus exchange server for exchanging information about the status ofsuch mobile communication devices.

BACKGROUND

Electronic devices, such as smartphones or tablets, may be used for anumber of purposes for which they were not traditionally used. Forexample, electronic devices are increasingly being used as a mobilewallet. That is, such electronic devices may be capable of storingvirtual payment credentials, and initiating and performing mobilepayments. By providing such capabilities, a user may use the electronicdevice to purchase goods and services instead of paying by cash, chequeor a plastic credit card. In such cases, the electronic device may storefinancial instrument information (such as credit card information) on anassociated SIM card, and this financial instrument information isprovided to a merchant's point of sale (POS) terminal during a mobilepayment transaction.

A number of institutions, such as financial institutions, mobile networkoperators (MNO), trusted service manager (TSM) systems, and mobilewallet server systems may internally track information about anelectronic device including a mobile communication device. That is, eachof these institutions may maintain their own database of informationassociated with a mobile communication device.

BRIEF DESCRIPTION OF THE DRAWINGS

Reference will now be made, by way of example, to the accompanyingdrawings which show an embodiment of the present application, and inwhich:

FIG. 1 shows a block diagram illustrating an example communicationsystem in which example embodiments of the present disclosure mayoperate;

FIG. 2 shows a block diagram of an example device status exchange serverin accordance with example embodiments of the present disclosure;

FIG. 3 shows a block diagram of an example profile associated with amobile communication device in accordance with example embodiments ofthe present disclosure;

FIG. 4 shows a block diagram of an example wireless service providerserver in accordance with example embodiments of the present disclosure;

FIG. 5 shows a block diagram of an example third party server inaccordance with example embodiments of the present disclosure; and

FIG. 6 shows a flowchart of an example method of notifying the thirdparty server of an update in information associated with the mobilecommunication device.

Similar reference numerals are used in different figures to denotesimilar components.

DETAILED DESCRIPTION OF EXAMPLE EMBODIMENTS

In one aspect, a method implemented on a device status exchange serveris described. The method includes: storing a plurality of profilesassociated with a plurality of mobile communication devices, at leastsome of the mobile communication devices being serviced by a wirelessservice provider having a wireless service provider server which tracksinformation about the mobile communication devices serviced by thewireless service provider, the plurality of profiles storing informationassociated with the mobile communication devices including at least someof the information tracked by the wireless service provider server;receiving, from one or more third party servers, one or moresubscription requests for notification of an update in informationassociated with one of the mobile communication devices; registering theone or more received subscription requests for the one or more thirdparty servers; detecting an update to the information stored in one ofthe profiles based on information received from a server; and inresponse to detecting the update: updating the profile associated withthe mobile communication device associated with the updated information;and notifying one or more of the third party servers of the update inaccordance with one or more registered subscription requests.

In another aspect, a device status exchanger server is described. Thedevice status exchange server includes a communication subsystem and amemory.

The device status exchange server also includes a processor coupled tothe communication subsystem and the memory. The processor is configuredto: store a plurality of profiles associated with a plurality of mobilecommunication devices, at least some of the mobile communication devicesbeing serviced by a wireless service provider having a wireless serviceprovider server which tracks information about the mobile communicationdevices serviced by the wireless service provider, the plurality ofprofiles storing information associated with the mobile communicationdevices including at least some of the information tracked by thewireless service provider server; receive, from one or more third partyservers, one or more subscription requests for notification of an updatein information associated with one of the mobile communication devices;register the one or more received subscription requests for the one ormore third party servers; detect an update to the information stored inone of the profiles based on information received from a server; and inresponse to detecting the update: update the profile associated with themobile communication device associated with the updated information; andnotify one or more of the third party servers of the update inaccordance with one or more registered subscription requests.

In yet another aspect, a non-transitory computer readable storage mediumis described. The non-transitory computer readable storage mediumincludes instructions which, when executed, configure a device statusexchange server to: store a plurality of profiles associated with aplurality of mobile communication devices, at least some of the mobilecommunication devices being serviced by a wireless service providerhaving a wireless service provider server which tracks information aboutthe mobile communication devices serviced by the wireless serviceprovider, the plurality of profiles storing information associated withthe mobile communication devices including at least some of theinformation tracked by the wireless service provider server; receive,from one or more third party servers, one or more subscription requestsfor notification of an update in information associated with one of themobile communication devices; register the one or more receivedsubscription requests for the one or more third party servers; detect anupdate to the information stored in one of the profiles based oninformation received from a server; and in response to detecting theupdate: update the profile associated with the mobile communicationdevice associated with the updated information; and notify one or moreof the third party servers of the update in accordance with one or moreregistered subscription requests.

Other aspects and features of the present application will becomeapparent to those ordinarily skilled in the art upon review of thefollowing description of specific embodiments of the application inconjunction with the accompanying figures.

Example Communication System

Reference is first made to FIG. 1, which illustrates in block diagramform a communication system 100 in which example embodiments of thepresent disclosure may operate.

In the embodiment of FIG. 1, an electronic device 102 is illustrated.More specifically, the electronic device 102 is a mobile communicationdevice, such as a smartphone or tablet. The electronic device 102 may becapable of data communications, or both voice and data communications.The mobile communication device may communicate with other electronicdevices, servers and/or systems connected with the communication system100.

Accordingly, in at least some example embodiments, the electronic device102 is connected for communication via one or more wireless networkswhich may include Wireless Wide Area Networks (WWAN), Wireless LocalArea Networks (WLAN), other network arrangements, and/or a combinationof these networks. A WWAN is commonly referred to as a “cellularnetwork”, and may include a number of transceiver base stations 104(with one being shown in FIG. 1).

The transceiver base station 104 provides wireless radio frequencycoverage for a corresponding area or cell, in order to facilitatewireless communication for the electronic device 102.

The WWAN may be operated by one or more wireless service providers thatprovide the communication services necessary for the electronic device102 to connect to the WWAN. The WWAN may conform to various networktypes (such as, GSM, GPRS, LTE, TDMA, CDMA, etc.), and may support anumber of frequency bands for communications within a particularwireless network type (for example, in the GSM network, the transceiverbase station may support four frequency bands: 850/900/1800/1900 MHz).The WWAN via a transceiver base station 104 provides a number ofchannels within a frequency band to allow the electronic device 102 tocommunicate. That is, the transceiver base station 104 assigns anavailable channel to the electronic device 102 to establish acommunication link within the WWAN.

In the illustrated example of FIG. 1, a WWAN is shown in the form of awireless network 101. The wireless network 101 is operating by awireless service provider, and includes at least the transceiver basestation 104 which is connected to a wireless service provider server112. The wireless service provider server 112 is operated by a wirelessservice provider and may provide specific functions and features for thewireless service provider. A wireless service provider is a provider ofcommunication services to the electronic device 102, and may be referredto as a mobile network operator (MNO). The wireless service provider mayown or control all the elements necessary to sell and delivercommunication services to the electronic device 102. For example, thewireless service provider may own or control the wireless networkinfrastructure (which includes the transceiver base station 104 and thewireless service provider server 112), back haul infrastructure,provisioning, billing and customer care computer systems, marketing,engineering and repair organizations, etc. These elements are requiredin delivering and managing wireless communication services to end-usersof electronic devices 102. Examples of wireless service providersinclude Rogers Wireless™, Telus Mobility™, Verizon Wireless™, AT&TMobility™, etc.

It will be appreciated that some of the functions of the “wirelessservice provider server 112” may, in some embodiments, be provided on aserver that is not owned or operated by the wireless service provider.For example, in at least some embodiments, a third-party may operate aserver that is configured to perform some or all functions of thewireless service provider server 112 discussed herein. For example, insome embodiments, a Mobile Virtual Network Operator (MVNO) may ownand/or operate some components of a wireless network such as, forexample, a server that is configured to perform some or all of thefunctions of the wireless service provider server 112 described in thisdocument.

Wireless access may be a subscription-based service. That is, in orderfor the electronic device 102 to obtain communication services, theelectronic device 102 may need to subscribe to a wireless serviceprovider. Such subscription services may be pre-paid (which is commonlyreferred to as “pay as you go”) or may be post-paid subscriptionservices. The wireless service provider provides subscription servicesin the form of a subscription service package that is purchased byend-users of the electronic devices 102 in order to enable theelectronic devices 102 for communication on the wireless network 101.The subscription service package defines the terms of usage of thesubscription services such as amount of voice and data communications,number and type of voice and data communications, rates of voice anddata communications, etc.

A purchased subscription service package is typically associated with asubscriber identity module (SIM) provided by a wireless serviceprovider. The SIM may, in some embodiments, be a “virtual SIM”, whichconsists of a phone number provided by a MNO that does not require a SIMcard to connect to a network. In some embodiments, the SIM may beprovided as a physical element referred to as a “SIM card” (which mayalso be referred to as a universal integrated circuit card (UICC)). TheSIM card may be inserted into the electronic device 102. The SIM storesunique identifiers (such as a mobile subscriber integrated servicesdigital network number (MSISDN) which is commonly referred to as a phonenumber, a unique serial number (ICCID) and an international mobilesubscriber identity (IMSI)) and associated security keys that areallocated by the wireless service provider, in order to identify andauthenticate subscribers on the wireless network 101.

When an end-user purchases a subscription service package from awireless service provider, the end-user is subscribed to the wirelessservice provider. In such instances, the electronic device 102 of theend-user is provisioned for communication on the wireless network 101.More particularly, the wireless service provider services the electronicdevice 102 to manage communication services for the electronic device102. The wireless service provider may maintain and/or have access toidentifying information associated with a subscribed end-user in orderto define a subscriber profile for the end-user. The identifyinginformation may include personal information, electronic deviceinformation and/or financial information, all associated with theend-user. Such information may be tracked by the wireless serviceprovider server 112 and memory associated with the wireless serviceprovider server 112 may be configured to store such information. It willbe appreciated that in at least some example embodiments, a third-partyorganization may track and store the identifying information. In suchcases, the wireless service provider may have access to the identifyinginformation maintained by the third-party organization.

Personal information may include personal identifying information of theend-user such as a name, date of birth, address, email address,alternate phone, etc. Such personal information is obtained when theend-user purchases a subscription service package from the wirelessservice provider. In such cases, the wireless service provider directlycollects the information from the end-user at the time of purchase ofthe subscription service package.

The electronic device information may include identifiers, operatingstates (which may be referred to as operating state information),statuses (which may be referred to as status information) and/orcharacteristics (which may be referred to as characteristic information)of the electronic device 102. For example, in at least some exampleembodiments, the identifiers of the electronic device 102 may includeidentifiers of the associated SIM card that is being operated within theelectronic device 102 which includes a MSISDN (i.e. a phone number), anICCID (which is a serial number uniquely identifying a SIM card) and aIMSI (which is a unique number used to identify the end-user on anetwork); and identifiers of the electronic device 102 itself includingan IMEI (which is a unique number allocated to an electronic device 102in order to identify it).

The operating state information may include information on whether theelectronic device 102 is locked (i.e. access to a security domain withinthe associated SIM of the electronic device 102 is blocked. A securitydomain may include one or more applications that trust a common securitytoken for authentication. In such cases, access to these one or moreapplications by the electronic device 102 may be restricted) or unlocked(i.e. access to a security domain within the associated SIM of theelectronic device 102 is allowed. In such cases, as a security domainmay include one or more applications with a common trusted securitytoken, these one or more applications may be accessible by theelectronic device 102), currently switched on or off, cancelled (i.e.the electronic device 102 is no longer enabled to perform communicationservices) or suspended (i.e. the electronic device 102 is temporarilydisabled to perform communication services).

The status information may include information on whether the electronicdevice 102 or the associated SIM card is blacklisted as being lost orstolen, a roaming status of the electronic device 102, etc. Thecharacteristic information may, for example, indicate physical (such as,the colour, design, model, etc. of the electronic device 102) and/oroperational features (e.g. whether hardware or software components ofthe electronic device 102 have been upgraded, the associated operatingsystem version, firmware version, etc.) of the electronic device 102. Itwill be appreciated that the electronic device information accessible bythe wireless service provider may include other types of information notspecifically listed herein.

The financial information may include credit history informationassociated with the end user. The wireless service provider may build acredit rating for each of its subscribed users based on payment historyof the user in paying for the subscribed services. Generally, users thatpay for the subscribed services on time and/or are subscribers for alonger period time have higher credit ratings than users that fail tomake payments on time and/or are subscribers for a shorter period. Suchcredit worthiness information of an end-user is maintained by thewireless service provider.

The identifying information of an end-user may continuously change andbe updated by the wireless service provider. Personal information,electronic device information and/or financial information may allchange. Such identifying information may be tracked by the wirelessservice provider and updated when the identifying information changes.More particularly, the wireless service provider server 112 may trackthe identifying information for changes, and record changes in theidentifying information to update the associated subscriber profile ofthe end-user.

The identifying information may be tracked by the wireless serviceprovider server 112 by various means. For example, for personalinformation, the wireless service provider server 112 may track theinformation by being notified of changes in the information when theend-user changes this information. In such cases, when the end-userchanges the personal information (such as, his/her address), theend-user informs the wireless service provider of the change, which isthen recorded by the wireless service provider server 112 (i.e. it isstored in memory). In other instances, the tracking may be performed ina more direct manner. For example, for electronic device information,the wireless service provider server 112 may obtain changes in theinformation (such as, an operating state) directly from the electronicdevice 102 as the information is changed, and record such a change. Suchinformation may be communicated by the electronic device 102 viawireless communication.

In at least some example embodiments, the wireless service providerserver 112 may store the identifying information, which may becontinuously updated. However, in other instances, the wireless serviceprovider server 112 may not store some or all of the identifyinginformation. Instead the identifying information may be stored inanother device, server or system. In at least some example embodiments,some or all of this identifying information may be stored in a devicestatus exchange server 114. In such an example, the wireless serviceprovider server 112 may have access to the information enabling thewireless service provider server 112 to update the information storedwithin the device status exchange server 114. It will be appreciatedthat this information stored in the device status exchange server 114may be received from other devices, systems and/or servers (includingthe wireless service provider server 112 and/or third party servers116), and may be similarly accessible by these other devices, systemsand/or servers for updating. Additionally, this device status exchangeserver 114 may or may not be affiliated with the wireless serviceprovider (i.e. it may or may not be owned and operated by the wirelessservice provider).

As illustrated, the devices and servers (i.e. the device status exchangeserver 114 and the wireless service provider server 112) may connect andcommunicate with one another via a network 120. The network 120 may be apublic network or a private network, or a combination thereof, and mayinclude the internet. For example, the wireless service provider server112 and the third party server 116 may interact with the device statusexchange server 114 to send information for storage and subsequentlyupdate this information. It will be appreciated that the device statusexchange server 114 may be a cloud based server; in which case, thewireless service provider server 112 and the third party server 114 maycommunication with the cloud based device status exchange server 114 viathe network 120 (which typically includes the internet).

As mentioned above, the device status exchange server 114 may receiveand store identifying information that is received from various sources.The received information may be arranged and stored in various mannerswithin the device status exchange server 114. For example, in someexample embodiments, the received information is arranged to define aprofile for each electronic device. That is, the device status exchangeserver 114 creates profiles storing information associated with theelectronic devices. More particularly, a profile for an electronicdevice may include associated personal information (i.e. personalinformation of all of the users that used the electronic device),electronic device information (which may include identifiers, operatingstates, statuses and/or characteristics of the electronic device), andfinancial information (for example, credit history information of allthe users that used the electronic device). As such, the device statusexchange server 114 maintains various types of information for aplurality of electronic devices.

The information included in the profiles may be accessible by thewireless service provider server 112 and/or the third party servers 116(the third party servers 116 are servers that are owned and operated byother organizations, such as, financial institutions, retailers, TSMvendors, mobile wallet vendors, etc.).

For example, in at least some example embodiments, these other serversmay access the information directly. In at least some exampleembodiments, the device status exchange server 114 may control access tothe information. In at least some such example embodiments, these otherservers may access the information by requesting access from the devicestatus exchange server 114. For example, in at least some exampleembodiments, the device status exchange server 114 may be equipped withan application programming interface (API) which allows applicationsincluded in these other servers to request access to this information.In response to receiving such requests via the API, the device statusexchange server 114 may provide access to the information to therequesting application.

In at least some example embodiments, the device status exchange server114 may control the level of accessibility of the information for eachserver (i.e. for each wireless service provider server and/or thirdparty server). For example, in at least some example embodiments, fullaccessibility rights may include the ability to read, write, deleteand/or modify the information by a server.

While in at least some example embodiments, a server may be restrictedfrom performing some or all of these operations when accessing theinformation. Further, in at least some example embodiments, the devicestatus exchange server 114 may prevent complete access of theinformation by a server. In such cases, the blocked server may not evenbe aware of the information stored in the device status exchange server114. Additionally, the accessibility rights may allow restrictions orpermissions to be set on a per-device basis and/or for specific types ofinformation. For example, a third party server 116 may have full accessto some of the information associated with an electronic device, but mayhave restricted or no access to some of the other information associatedwith the electronic device. Similarly, a third party server 116 may havefull access to information associated with one electronic device, butmay have restricted or no access to information associated with anotherelectronic device.

In at least some example embodiments, the accessibility rights may beestablished by these other servers (i.e. the wireless service providerserver 112 and/or the third party servers 116). That is, these otherservers may instruct the device status exchange server 114 to controlthe level of accessibility of the information to each other. Forexample, a third-party server may allow full, restricted or no access toanother third-party server for some or all of the information associatedwith an electronic device. Typically, it is the information that aserver initially sends to the device status exchange server 114 forstorage that it can control access to. That is, one of the servers (i.e.the server which first provided the information) may be considered to bethe owner of certain information and that server is permitted to control(e.g. by instructing the device status exchange server 114) theaccessibility rights for other servers. For example, it may grant readpermissions for the information to specified servers and may grant writepermissions for the information to specified servers (i.e. to allow theother servers to update the information).

Accordingly, the information in the device status exchange server 114may be varied, and more particularly, updated. As mentioned above,electronic device information may constantly change due changesassociated with the electronic device 102 (and similarly, personalinformation may change due to changes in the status of the subscriber);and as such, the server that obtains the changed information may accessthe information in the device status exchange server 114 to update it.In some cases, servers that initially sent the information for storagemay update this information when they determine that the information haschanged. For example, the wireless service provider server 112 may sendinformation that is tracked by the wireless service provider server 112(i.e. information about electronic devices 102) to the device statusexchange server 114. That is, changes in this tracked information maycause the wireless service provider server 112 to update “old”information stored in the device status exchange server 114. Similarly,the third-party server 116 may send some of the information for storageat the device status exchange server 114, and changes in thisinformation may cause the third-party server to update this storedinformation (i.e. it may cause the third-party server to send the newinformation to the device status exchange server 114 for storage).Additionally, in at least some example embodiments, the wireless serviceprovider server 112 and/or the third party server 116 may grant otherservers permission to update the information previously sent by thewireless service provider server 112 and/or the third party server 116for storage, when these other servers determine changes in theinformation.

As such, the device status exchange server 114 functions as a centraldata store for electronic device related information that iscontinuously updated, and is accessible by other servers. Additionally,the device status exchange server 114 may further function to informother servers of changes in the information as the information isupdated. That is, the device status exchange server 114 may grantsubscription requests to these other servers in order to obtainnotification about changes in the information when the information isupdated. More specifically, the device status exchange server 114 mayreceive and register subscription requests for notification of an updatein the information from third party servers 116. A subscription requestmay identify a request for notification to updates in particular typesof information (such as, an operating state of an electronic device)and/or a request for notification to updates in information forparticular electronic devices. The device status exchange server 114 maythen detect an update based on, for example, information received fromthe wireless service provider server 112 or a third party server 116. Inresponse to receiving the update, the device status exchange server 114updates the information (the profile associated with the electronicdevice 104 to which the information relates is accordingly updated), andnotifies the third party servers 116 of the update in accordance withthe registered subscription requests. That is, third party servers 116that requested to be informed when the particular information is changedare notified of this change in information. In at least some exampleembodiments, the notification sent by the device status exchange server114 and received by the third party servers may include the informationprior to being updated (i.e. the “old” information) as well as of theupdate in the information (i.e. the “new” information). As such, thedevice status exchange server 114 implements a push-based notificationsystem for updates. A push notification is a type of communicationinitiated by the device status exchange server 114, as opposed to inreply to a request from the other servers. The communication may includeinformation about the update to which these other servers havesubscribed to.

Accordingly, these notifications may be sent to these subscribingservers whenever an update of the information has occurred.

A third party server 116 that updates the information (i.e. the thirdparty server 116 which sent the updated information to the device statusexchange server 114) does not need to be informed of the update (as thethird party server 116 is already aware of the update). Thus, in someembodiments, the notification is not sent to the third party server 116that updated the information.

As mentioned above, in some instances, a third party server thatoriginally sent the information for storage by the device statusexchange server 114 may grant authorization, via the device statusexchange server 114, to other third party servers to update this storedinformation. In such cases, when one or more of these other third partyservers update this stored information, the third party server thatpreviously sent the stored information is notified of the update by thedevice status exchange server 114 (in this case, the third party servermay not be aware of the update).

The device status exchange server functions as a central repository thatstores information about electronic devices. By allowing for easyaccessibility of the information, the information may be readily sharedamong various organizations, and maintained up-to-date. Additionally,organizations may keep track of any changes in the information relevantto the organization by being notified of these changes as they occur.Organizations may now be able to leverage the knowledge of otherorganizations in order to obtain relevant information about electronicdevices that is otherwise not readily available. By way of example,certain organizations might benefit from knowledge about the colour ofthe electronic device 102. For example, if the electronic device 102 isequipped with mobile wallet functionality, knowledge of the colour ofthe electronic device 102 might be useful when determining whether atransaction should be processed. More particularly, if the colour of thedevice being used for a transaction does not match its expected colour,then this may be one indicator of potential fraud. In some embodiments,various third party servers who may benefit from knowledge of the colourof the electronic device may share information about the colour withother such servers using the device status exchange server 114.Similarly, in a further example, within the context of a mobile paymenttransaction, knowledge of the model of the electronic device 102 may beused to determine whether to process the transaction. In such cases, ifthe model of the device being used for the transaction does not matchits expected model, then this may be a further indicator of potentialfraud. Such model-related information may similarly be shared amongvarious servers via the device status exchange server 114. It will beappreciated that the information shared and used may be any type ofinformation discussed above.

As noted above, some of the information that may be shared using thedevice status exchange server 114 may be text-based information such as,for example, colour information, numbers associated with the electronicdevice such as the IMEI, etc. However, in some embodiments, other typesof data may be exchanged using the device status exchange server 114instead of or in addition to text data. By way of example, in someembodiments, images may be exchanged. For example, when a user bringstheir electronic device near a payment terminal to complete atransaction using near field communication (NFC) technology, aphotograph may be captured of the electronic device and sent to thedevice status exchange server 114 from a third party server associatedwith the payment terminal. This would permit other third party serversassociated with other payment terminals to view or analyze thephotograph when processing subsequent transactions to assess whether theelectronic device 102 is the same electronic device that was previouslyused to complete a transaction.

Example components and features of the device status exchange server114, the wireless service provider server 112 and the third party server116 will be discussed in greater detail below with reference to FIGS. 2,4 and 5 respectively.

While a single third party server 116 is illustrated in FIG. 1, it willbe understood that the device status exchange server 114 may connect toa plurality of third party servers 116 in some embodiments.

It will also be appreciated that the above-described communicationsystem 100 is provided for the purpose of illustration only, and thatthe above-described communication system 100 includes one possiblecommunication network configuration of a multitude of possibleconfigurations.

For example, while the wireless service provider server 112, the devicestatus exchange server 114 and the third party server 116 areillustrated as a single component, in practice it may be constructed ofa number of components which may be physically separated from oneanother.

Example Device Status Exchange Server

Reference is next made to FIG. 2 which illustrates an example devicestatus exchange server 114 in block diagram form. Although the devicestatus exchange server 114 is shown to be implemented as a singleserver, it will be understood that the functions of the device statusexchange server 114 may be implemented across a multitude of networkservers, or other suitable architecture.

In at least some embodiments, the functions of the device statusexchange server 114 may be implemented, in whole or in part, by way of aprocessor 240 which is configured to execute software modules 260 storedin memory 250. In the embodiment of FIG. 2, the device status exchangeserver 114 includes a controller comprising one or more processors 240which control the overall operation of the device status exchange server114. The processor 240 interacts with one or more communicationsubsystems 280 to perform communication functions via the network 120,with other systems, servers and/or devices such as the electronic device102, the wireless service provider server 112 and the third-party server116. The communication subsystem 280 may, for example, include asubsystem that is configured to connect the device status exchangeserver 114 with the wireless service provider server 112 and/or thethird-party server 116, over the network 120.

The device status exchange server 114 also includes memory 250 which isconnected to the processor 240 for receiving and sending data to theprocessor 240. While the memory 250 is illustrated as a singlecomponent, it will typically be comprised of multiple memory componentsof various types. For example, the memory 250 may include Random AccessMemory (RAM), Read Only Memory (ROM), a Hard Disk Drive (HDD), FlashMemory, or other types of memory. It will be appreciated that each ofthe various memory types will be best suited for different purposes andapplications.

The device status exchange server 114 may store data 270 in a data areaof the memory 250. The data 270 may be of various types and may includeservice data, application data, profile data, subscription request data,etc. The data 270 may be organized, at least partially, into one or moredatabases or data stores, each containing data items of the same datatype. For example, profiles 300 a, 300 b, 300 c of electronic devices,and subscription requests for notification of an update in the profilesmay be stored in a database. By way of example, profiles 300 a, 300 b,300 c may be stored in a profile data store 300 which is a databaseconfigured for storing profiles, while the subscription requests may bestored in a subscription request data store (not shown). Each profile300 a, 300 b, 300 c may be associated with a separate electronic device102 and/or a separate user or subscriber.

The processor 240 may operate under stored program control and mayexecute software modules 260 stored in the memory 250. The softwaremodules 260 may be comprised of, for example, operating system 262software, and one or more additional modules such as a device statusexchange manager 264 to carry out specific functions of the devicestatus exchange server 114.

The device status exchange manager 264 receives information associatedwith the electronic devices from the wireless service provider server112 and/or the third party servers 116 (the information is sent by theseservers for storage by the device status exchange manager 264). Thedevice status exchange manager 264 creates profiles 300 a, 300 b, 300 cfor the electronic devices based on this received information, andsubsequently stores these profiles in the memory 250. For example, thedevice status exchange manager 264 may permit profiles 300 a, 300 b, 300c to be stored in a profile data store 300 in the data 270 area of thememory 250.

As mentioned above, profiles store information associated withelectronic devices. More specifically, each profile contains informationassociated with a particular electronic device. The information mayinclude personal information (i.e. personal information of users thatused the electronic device), electronic device information (which mayinclude identifiers, operating states, statuses and/or characteristicsof the electronic device), and financial information (for example,credit history information of all the users that used the electronicdevice). An example profile will be discussed in greater detail belowwith reference to FIG. 3.

The device status exchange manager 264 further manages these profiles.More particularly, information included within these profiles is managedby the device status exchange manager 264. This information isconsidered “dynamic” information and may continuously change asproperties of the associated electronic devices are changed. As such,the device status exchange manager 264 may provide provisions for theinformation to be updated. Updating may include the features of reading,inserting, deleting and/or modifying the information in the profiles.The updates are generally provided by servers, such as the wirelessservice provider server 112 and/or the third party servers 116 as theupdates become available to these servers.

In some instances, the device status exchange manager 264 may controlthe updating of the information. In such example embodiments, theseother servers may request to update the information by requesting accessfrom the device status exchange manager 264. For example, in at leastsome example embodiments, the device status exchange manager 264 mayinclude an API which allows applications included in these other serversto request access to update this information. In response to receivingsuch requests via the API, the device status exchange manager 264 mayprovide access to the information for updating to the requestingapplications of the other server. However, in other instances, the otherservers may access and update the information directly, and may not needto request permission from the device status exchange manager 264.

Additionally, in at least some example embodiments, the device statusexchange manager 264 may prevent some or all types of updating of theinformation by the other servers. That is, the device status exchangemanager 264 may control the level of updating that may be performed by aparticular server. In such cases, a server may manipulate the devicestatus exchange manager 264 to control the updating of information byother servers (it will be appreciated that the server may only controlthe accessibility of information that it has initially provided to thedevice status exchange manager 264). For example, a wireless serviceprovider server 112 may grant permission, via the device status exchangemanager 264, to only a particular third party server to update theinformation (that it has previously provided), and not to other thirdparty servers. Similarly, the level of updating granted to this thirdparty server may also be restricted (for example, the third party servermay only be allowed to read and insert information but may not modifythe information).

The device status exchange manager 264 may further have the capabilityto notify servers of updates in the information. In such cases, thedevice status exchange manager 264 may function as a subscriptionmanager allowing servers to subscribe to the device status exchangemanager 264 to request for notification in updates to the information.For example, in at least some example embodiments, the device statusexchange manager 264 may receive subscription requests from third partyservers 116 requesting for notification of an update in the information,and register these subscriptions requests (i.e. record and store thesereceived subscription requests in memory 250). These subscriptionrequests may be particularized for a third party server 116. Forexample, the subscription request may identify one or more types ofinformation relevant to the third party server 116. That is, thesubscription request may only request to be notified of updates toparticular types of information (such as, of a change in the operatingstate) for an electronic device. Moreover, the subscription request may,additionally or individually, identify one or more electronic devicesrelevant to the third party server 116. That is, the subscriptionrequest may only request to be notified of updates to profiles ofselected electronic devices.

The device status exchange manager 264 may then detect an update basedon information received from the wireless service provider server 112 orthe third party server 116. For example, as mentioned above, thewireless service provider server 112 may track information aboutsubscribed electronic devices, and send some or all of this trackedinformation to the device status exchange manager 264. This receivedinformation is arranged and stored in profiles 300 a, 300 b, 300 c. Asthis information is “dynamic”, the wireless service provider server 112may determine changes in the previously sent and tracked information,and send this updated information to the device status exchange manager264. The third party server 116 may also send information about theelectronic devices to the device status exchange manager 264 which issimilarly arranged and stored in the profiles 300 a, 300 b, 300 c.Again, the third party server 116 may determine changes in theinformation, and send this updated information to the device statusexchange manager 264. The device status exchange manager 264 may detectthe update upon receiving this updated information from the wirelessservice provider server 112 and/or the third party server 116.

In response to receiving the update, the device status exchange manager264 updates the information in the profile to which it pertains, andnotifies the appropriate third party servers 116 of this update based onthe registered subscription requests. That is, third party servers 116that requested to be informed of the particular update in theinformation (which is indicated within their subscription requests), arenotified of the update. For example, a third party server 116 may benotified of an update to an operating state of a particular electronicdevice if the subscription request for the third party server 116indicates notifications of any updates to the operating state of theelectronic device. In order to further illustrate the update to thethird party server, in at least some example embodiments, thenotification may include both the information prior to being updated(i.e. the “old” information) as well as of the update in the information(i.e. the “new” information). As such, the server may view the change ofstatus in the information.

As mentioned above, a third party server may authorize the device statusexchange manager 264 to permit other third party servers to update theinformation that it has previously sent to the device status exchangemanager 264. For example, the device status exchange manager 264 mayreceive authorization, from a third party server that previously sentthe stored information, permitting other third party servers to updatethe stored information. In response to receiving the authorization, thedevice status exchange manager 264 may grant these other third partyservers' permission to update the stored information. In such exampleembodiments, the device status exchange manager 264 may further notifythese other third party servers that the third party server has grantedthem permission to modify the stored information.

As further mentioned above, a third party server 116 that updates theinformation does not need to be informed of the update. However, incases where a different third party server, than the third party serverthat previously sent information that is stored in a profile 300 a, 300b, 300 c, updates this stored information, the third party server thatpreviously sent the information is notified of the update by the devicestatus exchange manager 264. It will be appreciated that subscriptionrequests of a third party server may indicate non-notification ofupdates when the third party server updates information that it haspreviously sent, and notification of updates when other third partyservers update this information. However, in at least some exampleembodiments, a third party server that sends an update to informationthat it has previously sent may not be notified of the update regardlessof its subscription request. In such cases, if the device statusexchange manager 264 determines that the third party server thatpreviously sent the information sends the update, the device statusexchange manager 264 does not notify this third party server of theupdate.

In at least some example embodiments, other modules, such as theoperating system 262 may perform some or all of the functions of thedevice status exchange manager 264. In at least some exampleembodiments, the device status exchange manager 264 may instead includea plurality of software modules rather than a single block asillustrated.

It will be appreciated that the device status exchange server 114 asillustrated in FIG. 2 is an example server. In at least some exampleembodiments, servers may be used which are of different configurationsand/or functions.

Example Profile

The device status exchange server 114 creates and stores a number ofprofiles that are each associated with an electronic device. A profilestores information associated with an electronic device.

Reference will now be made to FIG. 3, which shows an example profile 300a. The profile 300 a includes information related to an electronicdevice 102, that is received from other servers and devices, such as,the wireless service provider server 112 and/or the third party server116. For example, information that is tracked and sent by the wirelessservice provider may be included within the profile 300 a. Similarly,information that is collected and sent by a third party server 116 maybe included within the profile 300 a.

As shown, the information may include, for example, identifiers 310(which may include identifiers of the electronic device 102 as wellidentifiers associated with a SIM card that is inserted in theelectronic device 102), operating states 320 (which may includeactivation states as well as communication states of the electronicdevice 102), status 330 (which may include information as to whether theelectronic device 102 is blacklisted as well as whether the associatedSIM card inserted in the electronic device 102 is blacklisted),characteristics 340 (which may include physical and operationalcharacteristics of the electronic device 102) and/or financialinformation 350 (which may include credit history information of theend-user), all associated with an electronic device 102.

Each of these properties may further include a plurality of fields. Forexample, the identifiers 310 may include a phone number (the phonenumber of the associated SIM card), an IMEI (the unique equipmentidentifier of the electronic device 102), an ICCID (the unique serialnumber of the SIM card) and/or an IMSI (which is a unique numberidentifying the end-user on the network) fields. The operating states320 may include a locked state (whether access to security domain withinan associated SIM card of the electronic device 102 is prevented), acancelled state (whether the electronic device 102 is no longer enabledto perform communication services, for example, due to the end-userterminating wireless communication subscription services), a suspendedstate (whether the electronic device 102 is temporarily disabled toperform communication services, for example, due to the wireless serviceprovider suspending service for non-payment of these services) and/or apower state (whether the electronic device 102 is currently switched onor off) fields. The status 330 may include a lost/stolen status(information as to whether the electronic device 102 is reported stolenor lost and listed on an EIR) and/or an associated SIM lost/stolenstatus (information as to whether the associated SIM card is reportedstolen or lost) fields. The characteristics 340 may include a colour(indicating a colour of a housing of the electronic device 102) and/oran upgrade (indicating whether the hardware and/or software componentsof the electronic device 102 have been upgraded) fields. The financialinformation 350 may include a credit history (the credit reportinformation of the end-user) field.

It will be appreciated that the profile may include other informationnot specifically listed herein and may not include all of theinformation described above.

In the example profile 300 a, the information included in the fields ofthe identifiers 310, operating states 320, status 330 and/or financialinformation 350 may be received from the wireless service providerserver 112. Such information is the type of information that may betracked by the wireless service provider (and/or other organizations).Similarly, the information in the fields of the characteristics 340 maybe received from the third party server 116. Such characteristics 340information may be obtained and tracked by organizations other than thewireless service provider (for example, independent retailers ofelectronic device hardware and software components).

In such example embodiments, fields that are originally populated basedon information received from a server are allocated to that server. Thatis, the server has management over the information in the allocatedfield. In such cases, the server may control accessibility rights to theinformation. For example, the wireless service provider server 112 maycontrol the accessibility of information in the fields of theidentifiers 310, operating states 320, status 330, and financialinformation 350; and the third party server 116 may control theaccessibility of information in the fields of the characteristics 340.By controlling accessibility, these servers may determine which otherservers may read, insert, delete and/or modify information within therespective fields. For example, the wireless service provider server 112may grant limited rights to the third party server 116 to only read theinformation in the fields under the control of the wireless serviceprovider server 112. Similarly, the third party server 116 may grantlimited rights to the wireless service provider server 112 to only readthe information in the characteristics 340 fields; while giving broaderrights to other servers to allow them to modify the information in thecharacteristics 340 fields. It will be appreciated that suchaccessibility rights to information in the fields may be varied by acontrolling server. These management rights may be imposed by the devicestatus exchange manager 264.

Moreover, the information within these fields may be varied (i.e.updated) by the server originally providing the information and/or byother servers. For example, the wireless service provider server 112 mayupdate the locked state field when the wireless service provider server112 determines that the electronic device 102 device changes its statefrom a previously unlocked stated to a locked state (the wirelessservice provider server 112 may track such an operating state of theelectronic device 102). Similarly, the third party server 116 may updatethe colour field when the third party server 116 determines that anend-user changes the colour of the housing of the electronic device 102(the third party server 116 may be a retailer of electronic devicehardware and software components, and may sell and install the newhousing on the electronic device 102 and/or may be a retailer or otherparty processing a financial transaction associated with a mobilepayment from the device).

In such example embodiments, the changes in these respective fields arereported to other servers based on their subscription preferences. Forexample, certain servers may be notified of the change in the lockedstate field (but not the wireless service provider server 112), and ofthe change in the colour field (which may include the wireless serviceprovider server 112, but not the third-party server that sent theupdate), in accordance with their subscription preferences.

It will be appreciated that such examples of management and update ofinformation in the fields are for the purposes of illustration only, andthe information within some or all of these fields may be managed and/orupdated by other servers.

Example Wireless Service Provider Server

Reference is next made to FIG. 4 which illustrates an example wirelessservice provider server 112 in block diagram form. Although the wirelessservice provider server 112 is shown to be implemented as a singleserver, it will be understood that the functions of the wireless serviceprovider server 112 may be implemented across a multitude of networkservers, or other suitable architecture. Additionally, although thewireless service provider server 112 and the device status exchangeserver 114 are configured to perform different functions, in at leastsome example embodiments, the wireless service provider server 112 maybe of a similar configuration to the device status exchange server 114.

In at least some example embodiments, the functions of the wirelessservice provider server 112 may be implemented, in whole or in part, byway of a processor 440 which is configured to execute software modules460 stored in memory 450. In the embodiment of FIG. 4, wireless serviceprovider server 112 includes a controller comprising one or moreprocessors 440 which control the overall operation of the wirelessservice provider server 112. The processor 440 interacts with one ormore communication subsystems 480 to perform communication functions viathe wireless network 101 and/or network 120, with other systems, serversand/or devices such as the electronic device 102, the device statusexchange server 114 and the third-party server 116.

The wireless service provider server 112 also includes memory 450 whichis connected to the processor 440 for receiving and sending data to theprocessor 440. While the memory 450 is illustrated as a singlecomponent, it will typically be comprised of multiple memory componentsof various types. For example, the memory 450 may include Random AccessMemory (RAM), Read Only Memory (ROM), a Hard Disk Drive (HDD), FlashMemory, or other types of memory. It will be appreciated that each ofthe various memory types will be best suited for different purposes andapplications.

The wireless service provider server 112 may store data 470 in a dataarea of the memory 450. The data 470 may be of various types and mayinclude service data, application data, subscriber profile data, etc.The data 470 may be organized, at least partially, into a number ofdatabases or data stores each containing data items of the same datatype. For example, subscriber profile data may be stored in the samedatabase and arranged accordingly within the database.

The subscriber profile data may be obtained and stored within the data470 area when an end-user is subscribed to the wireless service providerthat operates the wireless service provider server 112. The subscriberprofile data defines identifying information for a particular end-user(i.e. a subscriber). This identifying information may be obtained fromthe end-user and/or automatically obtained by the wireless serviceprovider server 112. As mentioned above, the identifying information mayinclude personal information, electronic device information and/orfinancial information associated with the subscriber.

At least some of this identifying information is tracked by the wirelessservice provider server 112. That is, the wireless service providerserver 112 is able to obtain updates to this information (eitherdirectly or indirectly) as the information is changed. For example, inthe case of personal information, the wireless service provider server112 may determine an update when the subscriber informs the wirelessservice provider server 112 of a change in the personal information(such as, a change in the subscriber's address). In another example, inthe case of electronic device information, the wireless service providerserver 112 may determine an update by querying and/or automaticallyreceiving related information from the electronic device 102 when theassociated electronic device information changes (such as, a subscriberswitching his/her SIM card from one electronic device to anotherelectronic device, in which case, the other electronic device mayautomatically send its IMEI to the wireless service provider server112). In a further example, in the case of financial information, thewireless service provider server 112 may determine an update when thesubscriber fails to make a payment for subscribed communicationservices. In such a case, the financial information and particularly,the credit history status of the subscriber will be affected negatively.

In at least some example embodiments, such updates may be determined andstored on the wireless service provider server 112 (for example, withinthe data 470 area of memory 450, as part of the subscriber profiledata).

The processor 440 may operate under stored program control and mayexecute software modules 460 stored in the memory 450. The softwaremodules 460 may be comprised of, for example, an operating system 462software. Besides performing the typical functions of an operatingsystem 462 of providing management capabilities of server components,and providing a platform for the software modules, the operating system462 may perform additional functions and features.

More specifically, in at least some example embodiments, the operatingsystem 462 may send some or all of the identifying information to thedevice status exchange server 114 for storage (in addition to or insteadof storing the information on the wireless service provider server 112).In such example embodiments, the operating system 462 has access to thisinformation, and may send updates to the device status exchange server114 as they become available. In such example embodiments, the operatingsystem 462 may perform functions similar to the third party server 116.That is, the operating system 462 may manage the information stored inthe device status exchange server 114, and may control accessibilityrights to this information by other devices and services.

As already mentioned, the information received by the device statusexchange server 114 is used to create profiles 300 a, 300 b, 300 c forelectronic devices. The profiles 300 a, 300 b, 300 c may further includeinformation received from other devices and servers (such as, the thirdparty server 116). In such cases, the operating system 462 may subscribeto the device status exchange server 114 to receive updates to some orall of the information received from these other devices and servers.Moreover, the operating system 462 may be granted accessibility rightsto some or all of the information received from these other devices andservers (for example, the operating system 462 may read, write, deleteand/or modify this information).

It will be appreciated that in at least some example embodiments, othermodules may perform some or all of the functions of the operating system462. In at least some example embodiments, the operating system 462 mayinstead include a plurality of software modules rather than a singleblock as illustrated.

Example Third Party Server

Reference is next made to FIG. 5 which illustrates an example thirdparty server 116 in block diagram form. Although the third party server116 is shown to be implemented as a single server, it will be understoodthat the functions of the third party server 116 may be implementedacross a multitude of network servers, or other suitable architecture.Additionally, although the third party server 116 is configured toperform different functions than the wireless service provider server112 and the device status exchange server 114, in at least some exampleembodiments, the third party server 116 may be of a similarconfiguration to these servers.

In at least some example embodiments, the functions of the third partyserver 116 may be implemented, in whole or in part, by way of aprocessor 540 which is configured to execute software modules 560 storedin memory 550. In the embodiment of FIG. 5, the third party server 116includes a controller comprising one or more processors 540 whichcontrol the overall operation of the third party server 116. Theprocessor 540 interacts with one or more communication subsystems 580 toperform communication functions via the wireless network 101 and/ornetwork 120, with other systems, servers and/or devices such as theelectronic device 102, the wireless service provider server 112 and thedevice status exchange server 114.

The third party server 116 also includes memory 550 which is connectedto the processor 540 for receiving and sending data to the processor540. While the memory 550 is illustrated as a single component, it willtypically be comprised of multiple memory components of various types.For example, the memory 550 may include Random Access Memory (RAM), ReadOnly Memory (ROM), a Hard Disk Drive (HDD), Flash Memory, or other typesof memory. It will be appreciated that each of the various memory typeswill be best suited for different purposes and applications.

The third party server 116 may store data 570 in a data area of thememory 550. The data 570 may be of various types and may include servicedata, application data, etc. The data 570 may be organized, at leastpartially, into a number of databases or data stores each containingdata items of the same data type.

The processor 540 may operate under stored program control and mayexecute software modules 560 stored in the memory 550. The softwaremodules 560 may be comprised of, for example, an operating system 562software. Besides performing the typical functions of an operatingsystem 562 of providing management capabilities of server components,and providing a platform for the software modules, the operating system562 may perform additional functions and features.

For example, in at least some example embodiments, the operating system562 may allow for subscribing to the device status exchange server 114to receive updates in information provided by the wireless serviceprovider server 112. As mentioned above, the third party server 116 maybe owned or operated by various types of organization including afinancial institution, a retailer, a charity, a political organization,etc. In fact, it could be any type of organization that is interested inobtaining information associated with electronic devices, and which itmay then use for various purposes (for example, a financial institutionmay be interested in obtaining electronic device related information inorder to further verify mobile payment transactions). As such, theinformation desired may vary based upon the type of third party server116 requesting the information. In such cases, the operating system 562may set subscription preferences for the request for information fromthe device status exchange server 114. For example, subscriptionpreferences may be based on the type of information and/or for one ormore specific electronic devices. For example, the operating system 562of a third party server 116 that is a financial institution may set thesubscription preference to receive only updates of identifiers andoperating states of electronic devices, and of particular electronicdevices (i.e. of electronic devices that it provides financial servicesto). In such example embodiments, such subscription preferences areincluded within the subscription requests sent from the operating system562 to the device status exchange server 114. Upon registration of theserequests by the device status exchange server 114, the operating system562 may receive updates whenever the subscribed information and/orinformation for a subscribed electronic device is updated.

Additionally, the operating system 562 may send information associatedwith electronic devices to the device status exchange server 114 forstorage (which is stored as part of a profile of an electronic device bythe device status exchange server 114). Such information may becollected by the third party server 116 in a similar manner as performedby the wireless service provider server 112 (i.e. directly from theelectronic device or indirectly, for example, from a user of theelectronic device). In such cases, the operating system 562 may managethe information stored in the device status exchange server 114. Forexample, the operating system 562 may update the information previouslysent to the device status exchange server 114. Additionally, theoperating system 562 may control accessibility rights to thisinformation by other devices and servers. Moreover, in cases where theoperating system 562 may grant rights to another server to change theinformation, the operating system 562 may be notified of such changes inthe information as they occur.

It will be appreciated that in at least some example embodiments, othermodules may perform some or all of the functions of the operating system562. In at least some example embodiments, the operating system 562 mayinstead include a plurality of software modules rather than a singleblock as illustrated.

Notifying an Update in Information

Referring now to FIG. 6, an example method 600 of notifying the thirdparty server 116 of an update in information associated with anelectronic device 102 is illustrated in flowchart form. The method 600may be implemented by the device status exchange server 114. One or moremodules on the device status exchange server 114, such as the devicestatus exchange manager 264, may perform the method 600. Moreparticularly, the device status exchange manager 264 may containcomputer readable instructions causing the processor 240 associated withthe device status exchange server 114 to perform method 600. It will beappreciated that other modules on the device status exchange server 114may perform some or all of the device-specific operations of method 600.It will also be appreciated that other servers and associated moduleswithin these other servers may perform the method 600.

The method 600 includes, at 602, the device status exchange server 114storing a plurality of profiles for a plurality of electronic devices.More specifically, each profile stores information associated with anelectronic device. As mentioned above, such information may includepersonal information (i.e. personal information of all of the users thatused the electronic device), electronic device information (which mayinclude identifiers, operating states, statuses and/or characteristicsof the electronic device), and financial information (for example,credit history information of all the users that used the electronicdevice). This information may be received from the wireless serviceprovider server 112 and/or one or more third party server 116. In atleast some example embodiments, the information provided by theseservers are tracked by them. That is, they may obtain updates to theinformation as it changes, and may send these updates to the devicestatus exchange server 114 for subsequent updating of the profiles.

The profiles and/or information contained in the profiles, may havecertain access rights and restrictions associated therewith. Forexample, as mentioned above, in at least some example embodiments, aserver different than the server that originally sent the informationfor storage may later update the information. In such exampleembodiments, a first third party server (or the wireless serviceprovider server) that sent the original information may grantauthorization, via the device status exchange server 114, to a secondthird party server (i.e. a different third party server, which may, insome cases be the wireless service provider server) to update theinformation (i.e. to update information in the specific field or otherlogical or physical storage area that stores the type of informationoriginally provided by the first third party server). That is, the firstthird party server gives permission to the device status exchange server114 to allow the second third party server to update the information. Inat least some example embodiments, the authorization may be directlycontrolled by the device status exchange server 114. That is, the devicestatus exchange server 114 may decide whether to allow a serverdifferent than the server that originally sent the information to updatethe information, without any further input from the server thatoriginally sent the information. Additionally, the authorization grantedby the server that sent the original information and/or the devicestatus exchange server 114 to one or more other servers to update theinformation may be varied at the request of the server that sent theoriginal information. For example, the authorization may be any one ormore of permission to read, write, delete or modify the information bythese other servers.

By way of example, if a third party server sends the device statusexchange server 114 information which will be inserted into a new fieldof the profile (such as, for example, information specifying devicecolor), it may grant authorization to other third party servers (and/orthe wireless service provider server) to update the information in thatfield. Thus, other third party servers that are trusted by the thirdparty server that originally sent the information may be permitted toshare information related to that field.

In at least some example embodiments, the server that sent the originalinformation may restrict access, via the device status exchange server114 to some or all of the information by one or more other servers (forexample, the restricted server may not even be aware of the originalinformation). In such cases, the server may control the accessibility ofthe information to these other servers. Such accessibility restrictionsmay be device-specific and/or information type specific. For example, afirst server may restrict access to some or all information relating toone device but not for another device, for a second server. The firstserver may also restrict access to some information for a device but notother information for the device, for the second server. Similarly, inat least some example embodiments, the device status exchange server 114may directly control and restrict access to some or all of the originalinformation by these other servers, without any input from the serverthat originally sent the information. Accordingly, at least some of thestored information received from a third party server may not beaccessible to at least one other third party server.

At 604, the device status exchange server 114 receives, from one or morethird party servers 116, one or more subscription requests fornotification of an update in information associated with one of theelectronic devices. As mentioned above, a server may subscribe to thedevice status exchange server 114 to obtain notifications of updates inthe information (provided that the server has authorization to at leastread and receive updates to the information). A subscription request maybe tailored to meet a third party server's 116 needs. For example, in atleast some example embodiments, a subscription request may request forone or more types of information and/or for one or more electronicdevices that are relevant to the third party server 116. As such, athird party server 116 may decide what types of information and forwhich electronic devices to receive notification of updates. At 606, thedevice status exchange server 114 registers the received subscriptionrequests from the third party servers 116. That is, the device statusexchange server 114 may log the request, and determine when thecondition of the request is fulfilled (i.e. when an update meets thecriteria of a subscription request).

It will be appreciated that a server that sends a subscription requestfor information must at least have permission to access the information.That is, the server must have been granted authorization or must nothave been restricted from at least reading the information. Accordingly,in such example embodiments, the device status exchange server 114,prior to registering a subscription request from a server, may determinewhether the server has permission to access the information. Forexample, the device status exchange server 114 may analyze theaccessibility rights of the information by the server, and if the devicestatus exchange server 114 determines that the server has permission oris not restricted from accessing the information, the subscriptionrequest is registered. In such cases, the server will receivenotification of updates to the information. However, if the devicestatus exchange server 114 determines that the server does not havepermission or is restricted from accessing the information, thesubscription request is not registered. In such cases, the server maynot receive notification of updates to the information even though itrequested to be informed of the updates. In at least some exampleembodiments, the server that sent the original information or the serverthat updates the information (which may be the server that sent theoriginal information) may instruct the device status exchange server 114to notify other servers of updates in the information. In such cases, inaddition to or instead of receiving subscription requests, the devicestatus exchange server 114 receives instructions to notify other serversof updates. It will also be appreciated that in such cases, these otherservers may further have to grant permission to the device statusexchange server 114 to receive these updates.

At 608, the device status exchange server 114 may detect an update tothe information stored in one of the profiles based on informationreceived from the wireless service provider server 112 and/or a thirdparty server 116. That is, these servers may send updated information ofthe previously stored information to the device status exchange server114, which is received and determined to be an update to theinformation. The updates to information may be sent by a server thatpreviously sent the information. Additionally, as mentioned above, athird party server may allow other servers to send updates to theinformation previously sent by the third party server. For example, thedevice status exchange server 114 may receive authorization from thethird party server permitting one or more other third party servers toupdate information previously sent by the third party server. Inresponse, the device status exchange server 114 grants these one or moreother third party servers permission to update this previously sentinformation. In such cases, these one or more other third party serversmay send updates to information that they had not previously sent.

In response to detecting the update, the device status exchange server114, at 610, updates the associated profile. That is, the device statusexchange server 114 updates the information in the corresponding profile(i.e. the profile associated with the mobile communication deviceassociated with the updated information) to which the updatedinformation pertains to.

As mentioned above, updating may at least include writing, deletingand/or modifying the information. As such, the device status exchangeserver 114 may add new information, delete some or all of theinformation and/or change the information within a profile. Suchupdating of the information may be provided by the server thatoriginally sent the information. Additionally, in at least some exampleembodiments, the updating of the information may be provided by a serverthat did not originally send the information (i.e. another server isauthorized to update the information). In such cases, the type ofupdating is based on the authorization granted to the server. That is,the device status exchange server 114 may accordingly update theinformation based on the authorization granted to the server.

In such example embodiments, prior to updating, the device statusexchange server 114 may analyze the authorization granted to the server,and determine whether the server is permitted to perform such an update.If it is determined that server is authorized to perform the update, theinformation is accordingly updated. However, it is determined that theserver is not authorized to perform the update, the information is notupdated. For example, if the authorization permits deleting information,and the server sends an update to delete information, the device statusexchange server 114 accordingly deletes the information to update theprofile. On the other hand, if the server is not permitted from deletinginformation (and may or may not be permitted from writing and/ormodifying the information), and the server sends an update to deleteinformation, the device status exchange server 114 does not delete theinformation. As such, the profile is not updated as the server is notauthorized to update the profile in the specified manner.

Additionally, the device status exchange server 114, at 612, notifiesthe third party servers of the update based on the subscriptionrequests. That is, the device status exchange server 114 determines theservers that requested to be notified of the particular update in theinformation, and subsequently notifies each of these servers of theupdate. As such, servers are only notified if the update in theinformation is relevant to them. Generally, in cases where a third partyserver provides the update, the third party server will not be informedof the update (as the third party server is already aware of theupdate). However, in cases where the third party server did not providethe update (for example, when the update is provided by a third partyserver that previously did not send the stored information), the thirdparty server is informed of the update (provided that the subscriptionrequest indicates to be notified). By way of example, in someembodiments, at least some of the information stored in the profiles mayhave been received from a first one of the third party servers. Anupdate in that information may be detected when a second one of thethird party servers sends updated information to the device statusexchange server 114. Upon detecting such an update, the first thirdparty server may be notified.

Since the notification is performed in accordance with the subscriptionrequests, the servers that are notified of an update are servers whohave indicated that the updated information will be relevant to them.More particularly, the subscription request for a third party server mayidentify one or more types of information (e.g. specific field(s) of theprofile) which is relevant to the third party server and/or may identifyone or more mobile communication devices that are relevant to the thirdparty server. In such embodiments, prior to notifying a third partyserver, the device status exchange server 114 uses the subscriptionrequest to determine whether the updated information is relevant to thethird party server (i.e. whether the updated information is of the typethat is relevant to the server) and/or whether the updated informationis associated with a mobile communication device that is relevant to thethird party server. The update information is only sent to the thirdparty server if the third party server would like to be notified of theupdate.

While the present disclosure is primarily described in terms of methods,a person of ordinary skill in the art will understand that the presentdisclosure is also directed to various apparatus, such as a serverand/or an electronic device, including components for performing atleast some of the aspects and features of the described methods, be itby way of hardware components, software or any combination of the two,or in any other manner. Moreover, an article of manufacture for use withthe apparatus, such as a pre-recorded storage device or other similarcomputer readable medium including program instructions recordedthereon, or a computer data signal carrying computer readable programinstructions may direct an apparatus to facilitate the practice of thedescribed methods. It is understood that such apparatus, and articles ofmanufacture also come within the scope of the present disclosure.

While the methods have been described as occurring in a particularorder, it will be appreciated by persons skilled in the art that some ofthe steps may be performed in a different order provided that the resultof the changed order of any given step will not prevent or impair theoccurrence of subsequent steps. Furthermore, some of the steps describedabove may be combined in other embodiments, and some of the stepsdescribed above may be separated into a number of sub-steps in otherembodiments.

The various embodiments presented above are merely examples. Variationsof the embodiments described herein will be apparent to persons ofordinary skill in the art, such variations being within the intendedscope of the present disclosure. In particular, features from one ormore of the above-described embodiments may be selected to createalternative embodiments comprised of a sub-combination of features whichmay not be explicitly described above. In addition, features from one ormore of the above-described embodiments may be selected and combined tocreate alternative embodiments comprised of a combination of featureswhich may not be explicitly described above. Features suitable for suchcombinations and sub-combinations would be readily apparent to personsskilled in the art upon review of the present disclosure as a whole. Thesubject matter described herein intends to cover and embrace allsuitable changes in technology.

What is claimed is:
 1. A method, performed on a device status exchangeserver, the method comprising: storing a plurality of profilesassociated with a plurality of mobile communication devices, at leastsome of the mobile communication devices being serviced by a wirelessservice provider having a wireless service provider server which tracksinformation about the mobile communication devices serviced by thewireless service provider, the plurality of profiles storing informationassociated with the mobile communication devices including at least someof the information tracked by the wireless service provider server;receiving, from one or more third party servers, one or moresubscription requests for notification of an update in informationassociated with one of the mobile communication devices; registering theone or more received subscription requests for the one or more thirdparty servers; detecting an update to the information stored in one ofthe profiles based on information received from a server; and inresponse to detecting the update: updating the profile associated withthe mobile communication device associated with the updated information;and notifying one or more of the third party servers of the update inaccordance with one or more registered subscription requests.
 2. Themethod of claim 1, wherein the information used to detect the update isreceived from the wireless service provider server.
 3. The method ofclaim 1, wherein the information used to detect the update is receivedfrom one of the third party servers, and wherein notifying includesnotifying one of the other third party servers of the update.
 4. Themethod of claim 1, wherein at least some of the information stored inthe profiles is received from a first one of the third party servers,and wherein detecting includes detecting an update of the storedinformation previously sent by the first one of the third party serversbased on information received from a second one of the third partyservers, and wherein notifying includes notifying the first one of thethird party servers.
 5. The method of claim 4, further comprising: priorto receiving the update of the stored information, receivingauthorization, from the first one of the third party servers, permittingthe second one of the third party servers to update the storedinformation; and in response to receiving the authorization, grantingthe second one of the third party servers permission to update thestored information.
 6. The method of claim 5, wherein the authorizationis to read, write, delete or modify information to update the storedinformation.
 7. The method of claim 4, wherein at least some of thestored information previously received from the first one of the thirdparty servers is not accessible by the one of the other third partyservers.
 8. The method of claim 1, wherein the subscription requestidentifies one or more types of information relevant to the third partyserver and wherein notifying one or more of the third party servers ofthe update in accordance with one or more registered subscriptionrequests comprises determining whether updated information is relevantto the third party server.
 9. The method claim 1, wherein thesubscription request identifies one or more of the mobile communicationdevices relevant to the third party server and wherein notifying one ormore of the third party servers of the update in accordance with one ormore registered subscription requests comprises determining whether theupdated information is associated with a mobile communication devicethat is relevant to the third party server.
 10. The method of claim 1,wherein notifying includes notifying the one or more third party serversof the information prior to being updated, and of the update in theinformation.
 11. The method of claim 1, wherein the information receivedfrom the server includes one or more identifiers associated with one ofthe mobile communication devices, and wherein the one or moreidentifiers include one or more of a phone number, a unique equipmentidentifier, a unique serial number or an international mobile subscriberidentity, associated with the mobile communication device.
 12. Themethod of claim 1, wherein the information received from the serverincludes an operating state of one of the mobile communication devices,and wherein the operating state includes a currently unlocked state,locked state, cancelled state or suspended state of the mobilecommunication device.
 13. The method of claim 1, wherein the informationreceived from the server includes credit history information associatedwith one of the profiles.
 14. The method of claim 1, wherein theinformation received from the server includes a lost status or stolenstatus of one of the mobile communication devices based on the mobilecommunication device being listed on an Equipment Identity Register. 15.The method of claim 1, wherein the information received from the serverincludes a lost status or stolen status of a subscriber identity moduleassociated with one of the mobile communication devices.
 16. The methodof claim 1, wherein the information received from the server includesone or more physical characteristics associated with one of the mobilecommunication devices.
 17. A device status exchange server comprising: acommunication subsystem; a memory; and a processor coupled to thecommunication subsystem and the memory, the processor configured to:store a plurality of profiles associated with a plurality of mobilecommunication devices, at least some of the mobile communication devicesbeing serviced by a wireless service provider having a wireless serviceprovider server which tracks information about the mobile communicationdevices serviced by the wireless service provider, the plurality ofprofiles storing information associated with the mobile communicationdevices including at least some of the information tracked by thewireless service provider server; receive, from one or more third partyservers, one or more subscription requests for notification of an updatein information associated with one of the mobile communication devices;register the one or more received subscription requests for the one ormore third party servers; detect an update to the information stored inone of the profiles based on information received from a server; and inresponse to detecting the update: update the profile associated with themobile communication device associated with the updated information; andnotify one or more of the third party servers of the update inaccordance with one or more registered subscription requests.
 18. Thedevice status exchange server of claim 17, wherein the information usedto detect the update is received from the wireless service providerserver.
 19. The device status exchange server of claim 17, wherein theinformation used to detect the update is received from one of the thirdparty servers, and wherein notifying includes notifying one of the otherthird party servers of the update.
 20. A computer readable storagemedium comprising computer executable instructions which, when executed,configure a device status exchange server to: store a plurality ofprofiles associated with a plurality of mobile communication devices, atleast some of the mobile communication devices being serviced by awireless service provider having a wireless service provider serverwhich tracks information about the mobile communication devices servicedby the wireless service provider, the plurality of profiles storinginformation associated with the mobile communication devices includingat least some of the information tracked by the wireless serviceprovider server; receive, from one or more third party servers, one ormore subscription requests for notification of an update in informationassociated with one of the mobile communication devices; register theone or more received subscription requests for the one or more thirdparty servers; detect an update to the information stored in one of theprofiles based on information received from a server; and in response todetecting the update: update the profile associated with the mobilecommunication device associated with the updated information; and notifyone or more of the third party servers of the update in accordance withone or more registered subscription requests.